import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

// 创建store实例=new Vuex里面的Store
const store = new Vuex.Store({
	state: {
		// 持久化保存,在不触发方法的情况下刷新页面vuex数据清空
		userInfo:uni.getStorageSync('userInfo')|| {} //null=>结构上v-if="userInfo"
		
	},
	getters: {},
	mutations: {
		setUserInfo(state,payload){
			state.userInfo=payload
			// 本地保存用户全部信息
			uni.setStorageSync("userInfo",payload)
		},
		changeUserInfo(state,payload){
			// 通过object.keys得到属性
			const arr = Object.keys(payload) // ['username', 'avatar']
			// const arr2 = Object.values(payload) // //返回对象的值
			
			arr.forEach(key=>{
				state.userInfo[key] = payload[key]
			})
			console.log(state.userInfo);
			
			// 更新state的userInfo数据
			uni.setStorageSync("userInfo",state.userInfo)
		}
	},
	actions: {}
})
// 使用 需挂载到入口文件上
export default store